11 research outputs found

    Understanding conceptual transfer in students learning a new programming language

    Get PDF
    There is a large literature from at least as early as 1985 on the difficulties encountered in learning programming languages, and in particular additional programming languages. This thesis concentrates on how students transfer their knowledge from their first programming language to their second. The central idea is to adapt and use theories from linguistics of how people learn second natural languages to illuminate the problems of learning second programming languages. The major claim of this thesis is that: Semantic transfer based on syntax similarities plays a role in relative novices’ conceptual transfer between programming languages; the implementation of deliberate semantic transfer interventions during relative novices’ second language learning can lead to improved conceptual transfer and understanding in learning a second programming language. This thesis uses mixed methods to investigate how students transition from procedural Python to object-oriented (OO) Java. It includes a sequence of nine research studies building on each other. First, an exploratory qualitative study is carried out on how semantic transfer in natural language applies to programming language transfer; secondly, a Model of Programming Language Transfer (MPLT) is developed based on the first study’s findings; thirdly, four quantitative studies are carried out to validate the model; fourthly, a study that collects school teachers’ views and experiences on second language learning is carried out; fifthly, a study is conducted to explore transfer interventions with students; and the last study builds and investigates a pedagogy for transfer deriving from the MPLT. The findings support the thesis claim that semantic transfer based on syntax similarities plays a role in relative novices’ conceptual transfer between programming languages. The transfer can be positive when the first programming language (PL1) and the second programming language (PL2) share similar syntax and semantics, negative when PL1 and PL2 share similar syntax but have different semantics, and there is little or no transfer when PL1 and PL2 have different syntax but share similar semantics. The results also reveal that transfer teaching interventions based on the MPLT could improve conceptual transfer and understanding in students learning a second PL. The contribution of this thesis is two-fold: First, a validated model of programming language transfer that has three categories that reflect the types of potential transfer students encounter when learning a second programming language. The model provides a unified way to measure transfer in second language learning. Second, a validated unified pedagogical guideline for promoting transfer in programming languages derived from the MPLT. Researchers, educators and curriculum designers can use these instruments to advance research, teach, and design teaching materials. First, the researchers can use the instruments to further programming language transfer research by adopting them in other programming language contexts. Second, educators can use the instruments as a guideline for improving second and subsequent programming language teaching. Lastly, Computer Science (CS) curricular designers can draw on these instruments as guidance to design teaching material that promotes transfer as students transition to new programming languages. They can also use them for teacher professional development

    Investigating K-12 Computing Education in Four African Countries (Botswana, Kenya, Nigeria, and Uganda)

    Get PDF
    As K-12 computing education becomes more established throughout the world, there is an increasing focus on accessibility for all, whether in a particular country or setting or in areas of the world that may not yet have computing established. This is primarily articulated as an equity issue. The recently developed capacity for, access to, participation in, and experience of computer science education (CAPE) Framework is one way of demonstrating stages and dependencies and understanding relative equity, taking into consideration the disparities between sub-populations. While there is existing research that covers the state of computing education and equity issues, it is mostly in high-income countries; there is minimal research in the context of low-middle-income countries like the sub-Saharan African countries

    Directing Incoming CS Students to an Appropriate Introductory Computer Science Course

    Get PDF
    Full Paper. Research. We discuss possible ways to direct students to right level of introductory programming. While many schools offer college preparatory or advanced placement courses in computing, there is still, unfortunately, a large part of the "college-ready" population that has no opportunity to learn computing at all before they arrive. Regulation of CS education at the state/province or national level is still rare (but growing). Thus incoming students possess a wide range of skills and knowledge. When coupled with increasing enrollments, this diversity of experience can result in courses having large numbers of both absolute beginners and seasoned coders. Such courses are difficult to teach, intimidate novice students, and bore those with more experience. This can result in low engagement and retention.Unlike mathematics and language arts, introductory courses in CS vary widely from one institution to another in both conceptual material and programming language used. A standard point of entry to college mathematics is a calculus course, with some students instead starting earlier with pre-calculus or an algebra refresher, and others starting out in the second-term calculus course. There is rarely a concern about student skill being hidden by notational or other language differences, because the language of mathematics is close to universal. Similarly, freshman language arts courses in reading and/or writing assume a certain level of skill and maturity of comprehension and expressiveness in the target language; otherwise remedial courses are provided.We investigate placement of incoming first year students into appropriate introductory computer science courses at higher education institutions where there is more than one choice of first course. The goal is to determine the best way to decide which first course would be the most helpful for each student

    Semantic Transfer in Programming Languages: Exploratory Study of Relative Novices

    No full text
    It is a natural part of a student's computing education to transfer from language to language, hence adopting to a new programming language (PL) quickly is a necessary skill. Prior work in computer science research mainly brings awareness of the success and difficulties that students face when learning new languages. In addition, work that directly relates to PL transfer mainly concerns experienced programmers problem solving in a new language, evidencing plan transfer. We could not find research attempting to devise a model of PL transfer based on code comprehension. We explore this phenomenon in the context of five university students transitioning from procedural Python to object-oriented Java, over a period of 10 weeks. We analyse the results through the lens of a model of second language acquisition using the notion of Semantic transfer and the Mindshift learning theory (MLT). The findings indicate that during the initial learning stages, learners relied mostly on their syntactic matching between Python and Java and subsequent semantic transfer which affected their learning positively on Carryover concepts and negatively on Changed concepts. Students could not transfer their semantic knowledge on concepts they perceived as Novel. An understanding of the transfer process learners go through during a shift can help inform our pedagogy on how to ease the transition process and achieve an effective learning process, and we provide pointers in this direction

    The Role of Explicit Instruction on Students Learning their Second Programming Language

    No full text
    Students are expected to move from one programming language (PL) to another in their computer science education. Recent work has proposed a model of PL transfer to explain how students transfer conceptual knowledge between languages. This model suggests that during the transition, learners automatically effect a transfer of semantics between languages based on syntax similarities. The semantic transfer can be positive for learning when the syntax and semantics of the new PL are similar to the prior PL (True Carryover Constructs) and becomes negative when the syntax of the prior PL is similar to the new PL but the semantics are different (False Carryover Constructs). To avoid negative semantic transfer during learning, this study aims to investigate the effectiveness of explicit instruction in teaching a second PL by conducting two empirical studies. Study 1 was a within-subject study that investigated undergraduate students transitioning from procedural Python to object-oriented Java. Study 2 was a between-subject study that investigated undergraduate students transitioning from object-oriented Python to object-oriented Java at a different university. The results of both studies show that students benefited significantly more on interventions on the False Carryover Constructs categories than the True Carryover Constructs. These findings can help teachers interpret and improve their own classroom practices when teaching second PLs

    Evaluating a Pedagogy for Improving Conceptual Transfer and Understanding in a Second Programming Language Learning Context

    No full text
    Near novice programmers face transfer challenges when learning a second or subsequent programming language (PL). Although these transfer challenges are known, minimal attention is given to developing a pedagogic model that can guide educators in improving transfer in the classroom. We therefore propose a transfer pedagogy that uses implicit, explicit, and bridging techniques which align with the Model of Programming Language Transfer (MPLT) predictions. To evaluate this pedagogy, we conducted a between-subject study with a total of 62 second-year undergraduate students who were transitioning from Python to Java. The study was for the duration of the first two and a half weeks of the Java course. We provide the quantitative and qualitative results on the effects of this pedagogy on learning programming concepts in the new Java language. We also report the lecturer’s views on using the pedagogy. The results show that students who used the transfer pedagogy performed significantly better in the post-test than the control group in most concepts. The qualitative results showed that 88% of the students appreciated the explicit teaching interventions, with some students noting they helped with avoiding transfer mistakes and made them understand concepts better. The lecturer also appreciated the value of the pedagogy, taking it as an opportunity to help students learn deeper programming concepts. However, they reported some challenges too. These findings suggest that the transfer pedagogy is beneficial and can be of value to second programming language learning

    Teachers’ Views and Experiences on Teaching Second and Subsequent Programming Languages

    No full text
    Motivation More and more high schools are teaching program- ming, and in many cases, teachers teach multiple programming languages to the same group of students. Objectives The goal of this paper is to explore the views of high-school teachers on second and subsequent programming languages, including their motivation for teaching multiple languages, their struggles, and their use of transfer strategies when they teach their second or third programming language. Method The study consists of semi- structured interviews with 23 high-school teachers in two European countries. Results Our findings indicate that school pupils face the same issues as university students when moving from first to subsequent languages. Furthermore, the teachers’ attitudes towards second language learning are highly variable, both positive and negative, with some supportive teaching strategies used, but many less helpful ones in evidence too. Discussion Our findings suggest that the value of second language learning needs to be highlighted in teacher professional development materials more strongly and that teachers might need more support in implementing transfer strategies

    Identifying Opportunities and Potential Roadblocks for CSEd Professionals

    No full text
    The recent growth of computing education globally has resulted in a growing number of Computer Science Education (CSEd) graduate students. To support and make a global impact in computing education, there is a need for these graduates to be in a diversity of careers/roles both within and beyond academia. Currently pursuing a CSEd PhD requires a leap of faith that one can overcome issues not only associated with pioneering a new discipline within the host institution but also is often undertaken without knowing what career opportunities will be available upon graduation. Surveys conducted in Spring 2020 and 2021 with graduate students and advisors document these challenges [3]. Following these surveys, the project team identified the need to support the growth of research in CS Education. By investigating career pathways for CSEd Graduate students, the need to expand the endeavor and discover what the future holds for CSEdGrad was made clear. This project also seeks to connect with CSEd graduates internationally. The current team leading this initiative comes from the United States, the Caribbean (Puerto Rico), Brazil, Thailand, and UK (via Botswana). Among the research initiatives that the team has undertaken is identifying non-academic career opportunities (jobs, conferences, publication opportunities, and fellowships) for CSEd graduate students. While seeking to promote and share international opportunities in non-academic settings, the researchers are faced with defining CSEd Research, the opportunities that CSEd graduate students can pursue, and how these vary across countries and regions. To gain preliminary insights into existing career opportunities, the team explored five countries (USA, UK, Brazil, Puerto Rico, and Thailand) for four months using online research methods. The data collected included country, type of organization, job description, and job qualification. This data was imported into Excel for detailed analysis. Content analysis was used to code collected data into career and organization categories systematically. Initial categories were generated deductively with the guideline from Amy Ko’s blog [1] on career paths, and new categories evolved as well. These categories were then merged and collapsed through an iterative process that led to developing a CSEd career path mind-map (See figure 1). In total, 83 jobs from 35 different non-academic organizations were reported. Furthermore, 15 career path categories and 6 organization categories emerged from these findings. Among the emerging themes that the team has found are limited opportunities within the developing countries, the varying definitions, and broad requirements for CSEd professions, and the dominant and leading role of the United States and the United Kingdom in CSEd. The research team understands that this can be an opportunity to create and pave the way to new opportunities within the field [2]. This poster seeks to generate a discussion within the ICER community about the progress of the team’s findings, and what the future holds for CSEd Graduate students
    corecore